FILE: 주간보고서_dwjang_20260604.pptx
SLIDE SIZE: W=14630400 H=8229600 EMU | W=16.00in H=9.00in
SLIDE COUNT: 7

LAYOUTS:
  [0] 0. 제목 슬라이드
  [1] 0. 제목 반전 슬라이드 
  [2] 1. 빈 화면
  [3] 1. 빈 반전 화면
  [4] 2. 목차 슬라이드
  [5] 2. 목차 반전 슬라이드

======================================================================
SLIDE 1
  layout: 0. 제목 반전 슬라이드 
  background: type=BACKGROUND (5)
  shape_count: 2
  - shape name='TextBox 1' type=TEXT_BOX (17) autoshape=
    geom: L=6620256 T=3749039 W=2785378 H=584775 EMU | L=7.24in T=4.10in W=3.05in H=0.64in
    fill: type=BACKGROUND (5)
    line: color=inherit width_pt=None
    textframe: anchor=None wrap=False mL=0 mR=91440 mT=45720 mB=45720
    text(60)='주간 진행 보고'
      p0 lvl=0 align=None - text='주간 진행 보고'
        r0 font='나눔고딕 ExtraBold' sz=32.0 b=True i=None c=inherit t='주간 '
        r1 font='나눔고딕 ExtraBold' sz=32.0 b=True i=None c=inherit t='진행'
        r2 font='나눔고딕 ExtraBold' sz=32.0 b=True i=None c=inherit t=' '
        r3 font='나눔고딕 ExtraBold' sz=32.0 b=True i=None c=inherit t='보고'
  - shape name='TextBox 2' type=TEXT_BOX (17) autoshape=
    geom: L=6620256 T=4572000 W=3346429 H=369332 EMU | L=7.24in T=5.00in W=3.66in H=0.40in
    fill: type=BACKGROUND (5)
    line: color=inherit width_pt=None
    textframe: anchor=None wrap=False mL=0 mR=91440 mT=45720 mB=45720
    text(60)='2026-06-01 (월)  ~  06-05 (금)'
      p0 lvl=0 align=None - text='2026-06-01 (월)  ~  06-05 (금)'
        r0 font='나눔고딕' sz=18.0 b=True i=None c=#55606C t='2026-06-01 (월)  ~  06-0'
        r1 font='나눔고딕' sz=18.0 b=True i=None c=#55606C t='5'
        r2 font='나눔고딕' sz=18.0 b=True i=None c=#55606C t=' ('
        r3 font='나눔고딕' sz=18.0 b=True i=None c=#55606C t='금'
        r4 font='나눔고딕' sz=18.0 b=True i=None c=#55606C t=')'

======================================================================
SLIDE 2
  layout: 1. 빈 화면
  background: type=BACKGROUND (5)
  shape_count: 4
  - shape name='TextBox 1' type=TEXT_BOX (17) autoshape=
    geom: L=402336 T=173736 W=6236208 H=457200 EMU | L=0.44in T=0.19in W=6.82in H=0.50in
    fill: type=BACKGROUND (5)
    line: color=inherit width_pt=None
    textframe: anchor=None wrap=False mL=0 mR=91440 mT=0 mB=45720
    text(60)='Android App 진행 보고'
      p0 lvl=0 align=None - text='Android App 진행 보고'
        r0 font='나눔고딕 ExtraBold' sz=24.0 b=True i=None c=inherit t='Android App 진행 보고'
  - shape name='TextBox 3' type=TEXT_BOX (17) autoshape=
    geom: L=603504 T=868680 W=13240512 H=3842077 EMU | L=0.66in T=0.95in W=14.48in H=4.20in
    fill: type=BACKGROUND (5)
    line: color=inherit width_pt=None
    textframe: anchor=None wrap=True mL=0 mR=91440 mT=45720 mB=45720
    text(60)='테스트 페이지 + labdb 업로드 + BLE/IMU 파싱 준비 | •  모바일 앱 테스트용 페이지 구현 |'
      p0 lvl=0 align=None - text='테스트 페이지 + labdb 업로드 + BLE/IMU 파싱 준비'
        r0 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t='테스트'
        r1 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t=' '
        r2 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t='페이지'
        r3 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t=' + '
        r4 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t='labdb'
        r5 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t=' '
        r6 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t='업로드'
        r7 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t=' + BLE/IMU '
        r8 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t='파싱'
        r9 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t=' '
        r10 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t='준비'
      p1 lvl=0 align=None - text='•  모바일 앱 테스트용 페이지 구현'
        r0 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='•  '
        r1 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='모바일'
        r2 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' 앱 '
        r3 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='테스트용'
        r4 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' '
        r5 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='페이지'
        r6 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' '
        r7 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='구현'
      p2 lvl=1 align=None - text='–  Clinical Measurement 모드 — 라벨 입력 + 6채널 라이브 시각화'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  Clinical Measurement '
        r1 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='모드'
        r2 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' — '
        r3 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='라벨'
        r4 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r5 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='입력'
        r6 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' + 6채널 '
        r7 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='라이브'
        r8 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r9 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='시각화'
      p3 lvl=1 align=None - text='–  폴더 단위 저장 (Downloads/VesiScan_Sessions/)'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  '
        r1 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='폴더'
        r2 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r3 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='단위'
        r4 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r5 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='저장'
        r6 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' (Downloads/'
        r7 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='VesiScan_Sessions'
        r8 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='/)'
      p4 lvl=0 align=None - text='•  labdb 업로드 기능 (Phase A+B)'
        r0 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='•  '
        r1 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='labdb'
        r2 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' '
        r3 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='업로드'
        r4 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' '
        r5 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='기능'
        r6 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' (Phase A+B)'
      p5 lvl=1 align=None - text='–  EncryptedSharedPreferences로 apiKey 안전 보관'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  '
        r1 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='EncryptedSharedPreferences로'
        r2 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r3 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='apiKey'
        r4 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r5 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='안전'
        r6 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r7 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='보관'
      p6 lvl=1 align=None - text='–  register → admin 승인 → /upload/json'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  register → admin '
        r1 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='승인'
        r2 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' → /upload/'
        r3 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='json'
      p7 lvl=1 align=None - text='–  End Session 시 자동 업로드 + 폴더 내 .uploaded 마커 + 수동 재시도 버튼'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  End Session 시 '
        r1 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='자동'
        r2 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r3 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='업로드'
        r4 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' + '
        r5 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='폴더'
        r6 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' 내 .uploaded '
        r7 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='마커'
        r8 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' + '
        r9 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='수동'
        r10 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r11 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='재시도'
        r12 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r13 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='버튼'
      p8 lvl=0 align=None - text='•  BLE 명령어 수정 및 IMU 파싱 추가'
        r0 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='•  BLE '
        r1 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='명령어'
        r2 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' '
        r3 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='수정'
        r4 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' 및 IMU '
        r5 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='파싱'
        r6 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' '
        r7 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='추가'
      p9 lvl=1 align=None - text='–  rim: 응답 188B (15 samples × 12B) BE int16 파싱'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  rim: '
        r1 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='응답'
        r2 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' 188B (15 samples × 12B) BE int16 '
        r3 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='파싱'
      p10 lvl=1 align=None - text='–  ImuPacketCollector — Accel ±4g (1/8192 LSB), Gyro ±500dps'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  '
        r1 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='ImuPacketCollector'
        r2 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' — Accel ±4g (1/8192 LSB), Gyro ±500dps '
  - shape name='AutoShape 2' type=AUTO_SHAPE (1) autoshape=
    geom: L=7162800 T=3962400 W=304800 H=304800 EMU | L=7.83in T=4.33in W=0.33in H=0.33in
    fill: type=BACKGROUND (5)
    line: color=inherit width_pt=None
    textframe: anchor=TOP (1) wrap=True mL=91440 mR=91440 mT=45720 mB=45720
    text(60)=''
      p0 lvl=0 align=None - text=''
  - shape name='그림 6' type=PICTURE (13) autoshape=
    geom: L=9247388 T=297454 W=3157605 H=6841479 EMU | L=10.11in T=0.33in W=3.45in H=7.48in
    line: color=inherit width_pt=None

======================================================================
SLIDE 3
  layout: 1. 빈 화면
  background: type=BACKGROUND (5)
  shape_count: 5
  - shape name='TextBox 1' type=TEXT_BOX (17) autoshape=
    geom: L=402336 T=173736 W=6236208 H=457200 EMU | L=0.44in T=0.19in W=6.82in H=0.50in
    fill: type=BACKGROUND (5)
    line: color=inherit width_pt=None
    textframe: anchor=None wrap=False mL=0 mR=91440 mT=0 mB=45720
    text(60)='Android App 진행 보고'
      p0 lvl=0 align=None - text='Android App 진행 보고'
        r0 font='나눔고딕 ExtraBold' sz=24.0 b=True i=None c=inherit t='Android App 진행 보고'
  - shape name='TextBox 3' type=TEXT_BOX (17) autoshape=
    geom: L=603504 T=868680 W=13240512 H=4306307 EMU | L=0.66in T=0.95in W=14.48in H=4.71in
    fill: type=BACKGROUND (5)
    line: color=inherit width_pt=None
    textframe: anchor=None wrap=True mL=0 mR=91440 mT=45720 mB=45720
    text(60)='labdb 통합 정리 | •  dataType "001" JSON 저장 및 표시 | –  내부 임상 R&D '
      p0 lvl=0 align=None - text='labdb 통합 정리'
        r0 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t='labdb'
        r1 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t=' '
        r2 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t='통합'
        r3 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t=' '
        r4 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t='정리'
      p1 lvl=0 align=None - text='•  dataType "001" JSON 저장 및 표시'
        r0 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='•  '
        r1 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='dataType'
        r2 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' "001" JSON '
        r3 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='저장'
        r4 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' 및 '
        r5 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='표시'
      p2 lvl=1 align=None - text='–  내부 임상 R&D 구분용 — 외부 일반 VesiScan "000"과 분리'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  '
        r1 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='내부'
        r2 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r3 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='임상'
        r4 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' R&D '
        r5 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='구분용'
        r6 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' — '
        r7 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='외부'
        r8 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r9 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='일반'
        r10 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r11 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='VesiScan'
        r12 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' "000"과 '
        r13 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='분리'
      p3 lvl=1 align=None - text='–  meta.json / measurement.json 양쪽에 data_type 필드 노출'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  '
        r1 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='meta.json'
        r2 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' / '
        r3 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='measurement.json'
        r4 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r5 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='양쪽에'
        r6 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r7 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='data_type'
        r8 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r9 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='필드'
        r10 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r11 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='노출'
      p4 lvl=0 align=None - text='•  labdb 웹에서 raw JSON 다운로드 가능'
        r0 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='•  '
        r1 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='labdb'
        r2 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' '
        r3 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='웹에서'
        r4 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' raw JSON '
        r5 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='다운로드'
        r6 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' '
        r7 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='가능'
      p5 lvl=1 align=None - text='–  (raw 외 별도 처리 영역은 web 담당 — 미수정)'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  (raw 외 '
        r1 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='별도'
        r2 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r3 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='처리'
        r4 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r5 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='영역은'
        r6 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' web '
        r7 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='담당'
        r8 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' — '
        r9 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='미수정'
        r10 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=')'
      p6 lvl=0 align=None - text='•  웹 프론트엔드 wall detection 알고리즘 V4.1로 변경'
        r0 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='•  웹 '
        r1 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='프론트엔드'
        r2 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' wall detection '
        r3 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='알고리즘'
        r4 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' V4.1로 '
        r5 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='변경'
      p7 lvl=0 align=None - text='•  raw JSON 파일명에 session ID 포함 + 메타데이터 저장'
        r0 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='•  raw JSON '
        r1 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='파일명에'
        r2 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' session ID '
        r3 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='포함'
        r4 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' + '
        r5 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='메타데이터'
        r6 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' '
        r7 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='저장'
      p8 lvl=1 align=None - text='–  파일명만으로 측정 식별, examiner / posture / step / true_volume'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  '
        r1 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='파일명만으로'
        r2 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r3 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='측정'
        r4 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r5 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='식별'
        r6 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=', examiner / posture / step / '
        r7 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='true_volume'
      p9 lvl=0 align=None - text='•  PostgreSQL JSONB NULL byte 500 에러 해결'
        r0 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='•  PostgreSQL JSONB NULL byte 500 '
        r1 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='에러 해결'
      p10 lvl=1 align=None - text='–  서버 /var/log/labdb.log 직접 확인 → BLE rid: 응답의 trailing NULL이'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  '
        r1 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='서버'
        r2 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' /var/log/labdb.log '
        r3 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='직접'
        r4 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r5 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='확인'
        r6 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' → BLE rid: '
        r7 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='응답의'
        r8 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' trailing '
        r9 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='NULL이'
        r10 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r11 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='원인'
      p11 lvl=1 align=None - text='–  BLE 파싱 + LabdbClient 양쪽에 재귀 sanitizer 추가'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  BLE '
        r1 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='파싱'
        r2 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' + '
        r3 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='LabdbClient'
        r4 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r5 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='양쪽에'
        r6 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r7 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='재귀'
        r8 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' sanitizer '
        r9 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='추가'
  - shape name='그림 7' type=PICTURE (13) autoshape=
    geom: L=9135186 T=3057935 W=5076573 H=4302985 EMU | L=9.99in T=3.34in W=5.55in H=4.71in
    line: color=inherit width_pt=None
  - shape name='그림 9' type=PICTURE (13) autoshape=
    geom: L=7075214 T=582514 W=3633182 H=2356549 EMU | L=7.74in T=0.64in W=3.97in H=2.58in
    line: color=inherit width_pt=None
  - shape name='그림 12' type=PICTURE (13) autoshape=
    geom: L=10834869 T=582514 W=3393195 H=2356549 EMU | L=11.85in T=0.64in W=3.71in H=2.58in
    line: color=inherit width_pt=None

======================================================================
SLIDE 4
  layout: 1. 빈 화면
  background: type=BACKGROUND (5)
  shape_count: 3
  - shape name='TextBox 1' type=TEXT_BOX (17) autoshape=
    geom: L=402336 T=173736 W=6236208 H=457200 EMU | L=0.44in T=0.19in W=6.82in H=0.50in
    fill: type=BACKGROUND (5)
    line: color=inherit width_pt=None
    textframe: anchor=None wrap=False mL=0 mR=91440 mT=0 mB=45720
    text(60)='Android App 진행 보고'
      p0 lvl=0 align=None - text='Android App 진행 보고'
        r0 font='나눔고딕 ExtraBold' sz=24.0 b=True i=None c=inherit t='Android App 진행 보고'
  - shape name='TextBox 3' type=TEXT_BOX (17) autoshape=
    geom: L=603504 T=868680 W=13240512 H=5781070 EMU | L=0.66in T=0.95in W=14.48in H=6.32in
    fill: type=BACKGROUND (5)
    line: color=inherit width_pt=None
    textframe: anchor=None wrap=True mL=0 mR=91440 mT=45720 mB=45720
    text(60)='펌웨어 업데이트 대응 — reb 패킷 신구조 (208B → 210B) | •  payload 앞에 ch_in'
      p0 lvl=0 align=None - text='펌웨어 업데이트 대응 — reb 패킷 신구조 (208B → 210B)'
        r0 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t='펌웨어'
        r1 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t=' '
        r2 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t='업데이트'
        r3 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t=' '
        r4 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t='대응'
        r5 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t=' — reb '
        r6 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t='패킷'
        r7 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t=' '
        r8 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t='신구조'
        r9 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t=' (208B → 210B)'
      p1 lvl=0 align=None - text='•  payload 앞에 ch_info 2B 추가 = [ch_session 1B] + [ch_num 1B]'
        r0 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='•  payload '
        r1 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='앞에'
        r2 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' '
        r3 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='ch_info'
        r4 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' 2B '
        r5 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='추가'
        r6 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' = ['
        r7 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='ch_session'
        r8 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' 1B] + ['
        r9 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='ch_num'
        r10 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' 1B]'
      p2 lvl=1 align=None - text='–  [tag 4B][ch_info 2B][num_sample 2B][adc 200B][crc 2B]'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  [tag 4B]['
        r1 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='ch_info'
        r2 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' 2B]['
        r3 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='num_sample'
        r4 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' 2B]['
        r5 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='adc'
        r6 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' 200B]['
        r7 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='crc'
        r8 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' 2B]'
      p3 lvl=0 align=None - text='•  채널/세션 정보로 측정 set 식별'
        r0 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='•  '
        r1 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='채널'
        r2 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='/'
        r3 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='세션'
        r4 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' '
        r5 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='정보로'
        r6 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' '
        r7 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='측정'
        r8 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' set '
        r9 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='식별'
      p4 lvl=1 align=None - text='–  동일 ch_session = 한 측정 set으로 6개 reb 묶음'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  '
        r1 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='동일'
        r2 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r3 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='ch_session'
        r4 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' = 한 '
        r5 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='측정'
        r6 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r7 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='set으로'
        r8 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' 6개 reb '
        r9 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='묶음'
      p5 lvl=1 align=None - text='–  ch_num으로 채널 직접 indexing (도착 순서 의존 폐기)'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  '
        r1 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='ch_num으로'
        r2 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r3 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='채널'
        r4 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r5 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='직접'
        r6 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' indexing ('
        r7 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='도착'
        r8 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r9 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='순서'
        r10 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r11 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='의존'
        r12 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r13 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='폐기'
        r14 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=')'
      p6 lvl=0 align=None - text='•  누락/불일치 측정 set 자동 폐기'
        r0 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='•  '
        r1 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='누락'
        r2 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='/'
        r3 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='불일치'
        r4 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' '
        r5 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='측정'
        r6 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' set '
        r7 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='자동'
        r8 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' '
        r9 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='폐기'
      p7 lvl=1 align=None - text='–  session 불일치 / 중복 ch_num / 6채널 중 일부 누락 → 해당 set drop'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  session '
        r1 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='불일치'
        r2 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' / '
        r3 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='중복'
        r4 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r5 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='ch_num'
        r6 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' / 6채널 중 '
        r7 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='일부'
        r8 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r9 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='누락'
        r10 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' → '
        r11 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='해당'
        r12 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' set drop'
      p8 lvl=1 align=None - text='–  다음 정상 set만 처리'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  '
        r1 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='다음'
        r2 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r3 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='정상'
        r4 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r5 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='set만'
        r6 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r7 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='처리'
      p9 lvl=0 align=None - text='•  한 곳 수정으로 전 화면 적용'
        r0 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='•  한 곳 '
        r1 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='수정으로'
        r2 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' 전 '
        r3 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='화면'
        r4 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' '
        r5 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='적용'
      p10 lvl=1 align=None - text='–  도넛차트(maa?) · placement · 임상(mtb?) 모두 동일 collector'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  '
        r1 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='도넛차트'
        r2 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='(maa?) · placement · '
        r3 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='임상'
        r4 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='('
        r5 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='mtb'
        r6 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='?) '
        r7 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='모두'
        r8 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r9 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='동일'
        r10 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' collector'
      p11 lvl=1 align=None - text='–  PiezoPacketCollector 한 군데만 신구조로 재작성'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  '
        r1 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='PiezoPacketCollector'
        r2 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' 한 '
        r3 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='군데만'
        r4 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r5 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='신구조로'
        r6 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r7 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='재작성'
      p12 lvl=0 align=None - text='•  Sensor 측정 시 IMU 값 — 가장 오래된 것 → 가장 최근 것으로 수정'
        r0 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='•  Sensor '
        r1 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='측정'
        r2 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' 시 IMU 값 — '
        r3 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='가장'
        r4 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' '
        r5 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='오래된'
        r6 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' 것 → '
        r7 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='가장'
        r8 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' '
        r9 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='최근'
        r10 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' '
        r11 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='것으로'
        r12 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' '
        r13 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='수정'
      p13 lvl=1 align=None - text='–  FIFO 첫 샘플 사용 버그 → 측정 순간 자세 반영을 위해 마지막 샘플로'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  FIFO 첫 '
        r1 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='샘플'
        r2 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r3 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='사용'
        r4 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r5 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='버그'
        r6 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' → '
        r7 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='측정'
        r8 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r9 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='순간'
        r10 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r11 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='자세'
        r12 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r13 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='반영을'
        r14 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r15 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='위해'
        r16 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r17 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='마지막'
        r18 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r19 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='샘플로'
      p14 lvl=1 align=None - text=''
      p15 lvl=1 align=None - text='총 15개 받는데 맨 처음 들어온거는 더 적을 수 있음.'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='총 '
        r1 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='15'
        r2 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='개 받는데 맨 처음 '
        r3 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='들어온거는'
        r4 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r5 font='나눔고딕' sz=15.0 b=None i=None c=#222A33 t='더 적을 수 있음'
        r6 font='나눔고딕' sz=15.0 b=None i=None c=#222A33 t='.'
      p16 lvl=1 align=None - text='마지막으로 받은 imu값(최신) 을 센서 측정 당시의 imu로 이해하면 될것.'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='마지막으로 받은 '
        r1 font='나눔고딕' sz=15.0 b=None i=None c=#222A33 t='imu'
        r2 font='나눔고딕' sz=15.0 b=None i=None c=#222A33 t='값'
        r3 font='나눔고딕' sz=15.0 b=None i=None c=#222A33 t='('
        r4 font='나눔고딕' sz=15.0 b=None i=None c=#222A33 t='최신'
        r5 font='나눔고딕' sz=15.0 b=None i=None c=#222A33 t=') '
        r6 font='나눔고딕' sz=15.0 b=None i=None c=#222A33 t='을 센서 측정 당시의 '
        r7 font='나눔고딕' sz=15.0 b=None i=None c=#222A33 t='imu'
        r8 font='나눔고딕' sz=15.0 b=None i=None c=#222A33 t='로 이해하면 '
        r9 font='나눔고딕' sz=15.0 b=None i=None c=#222A33 t='될것'
        r10 font='나눔고딕' sz=15.0 b=None i=None c=#222A33 t='.'
  - shape name='그림 5' type=PICTURE (13) autoshape=
    geom: L=8661917 T=1550078 W=2991267 H=4534533 EMU | L=9.47in T=1.70in W=3.27in H=4.96in
    line: color=inherit width_pt=None

======================================================================
SLIDE 5
  layout: 1. 빈 화면
  background: type=BACKGROUND (5)
  shape_count: 3
  - shape name='TextBox 1' type=TEXT_BOX (17) autoshape=
    geom: L=402336 T=173736 W=6236208 H=457200 EMU | L=0.44in T=0.19in W=6.82in H=0.50in
    fill: type=BACKGROUND (5)
    line: color=inherit width_pt=None
    textframe: anchor=None wrap=False mL=0 mR=91440 mT=0 mB=45720
    text(60)='Android App 진행 보고'
      p0 lvl=0 align=None - text='Android App 진행 보고'
        r0 font='나눔고딕 ExtraBold' sz=24.0 b=True i=None c=inherit t='Android App 진행 보고'
  - shape name='TextBox 3' type=TEXT_BOX (17) autoshape=
    geom: L=603504 T=868680 W=13240512 H=6858000 EMU | L=0.66in T=0.95in W=14.48in H=7.50in
    fill: type=BACKGROUND (5)
    line: color=inherit width_pt=None
    textframe: anchor=None wrap=True mL=0 mR=91440 mT=45720 mB=45720
    text(60)='ClinicalLive — V4.1 Wall Peak 오버레이 (사내 가시화 요청) | •  사내 임상 테스'
      p0 lvl=0 align=None - text='ClinicalLive — V4.1 Wall Peak 오버레이 (사내 가시화 요청)'
        r0 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t='ClinicalLive — V4.1 Wall Peak 오버레이 (사내 가'
      p1 lvl=0 align=None - text='•  사내 임상 테스트 진행자 요청 — 실시간 peak 위치 가시화'
        r0 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='•  사내 임상 테스트 진행자 요청 — 실시간 peak 위치 가시화'
      p2 lvl=0 align=None - text='•  V4.1 wall detection (walldetect.V41Detector)을 매 mtb 사이클마다'
        r0 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='•  V4.1 wall detection (walldetect.V41De'
      p3 lvl=1 align=None - text='–  입력: 6채널 raw ADC + ProbeProfileDto (PiezoMonitoring과 동일 설정'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  입력: 6채널 raw ADC + ProbeProfileDto (Pi'
      p4 lvl=1 align=None - text='–  출력: 채널별 antIdx(전벽) / postIdx(후벽) Int?'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  출력: 채널별 antIdx(전벽) / postIdx(후벽) Int?'
      p5 lvl=1 align=None - text='–  runCatching으로 감싸 detection 실패가 측정 자체에 영향 없도록'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  runCatching으로 감싸 detection 실패가 측정 자체에'
      p6 lvl=0 align=None - text='•  표시'
        r0 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='•  표시'
      p7 lvl=1 align=None - text='–  그래프 위 세로선 마커 — ant=green, post=orange (alpha 0.75)'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  그래프 위 세로선 마커 — ant=green, post=orange'
      p8 lvl=1 align=None - text='–  채널 헤더 우측 "a{antIdx} p{postIdx}" 컬러 텍스트'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  채널 헤더 우측 "a{antIdx} p{postIdx}" 컬러 텍스'
      p9 lvl=1 align=None - text='–  기존 raw max peak 숫자도 그대로 유지'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  기존 raw max peak 숫자도 그대로 유지'
      p10 lvl=0 align=None - text='•  저장 데이터는 변경 없음'
        r0 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='•  저장 데이터는 변경 없음'
      p11 lvl=1 align=None - text='–  measurement.json / labdb payload는 그대로 raw ADC'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  measurement.json / labdb payload는 그대로'
      p12 lvl=1 align=None - text='–  V4.1 결과는 화면 표시 전용 — 알고리즘 변경 시 같은 데이터로 재분석'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  V4.1 결과는 화면 표시 전용 — 알고리즘 변경 시 같은 데이터로'
  - shape name='그림 4' type=PICTURE (13) autoshape=
    geom: L=7315200 T=3161841 W=6946073 H=3101503 EMU | L=8.00in T=3.46in W=7.60in H=3.39in
    line: color=inherit width_pt=None

======================================================================
SLIDE 6
  layout: 1. 빈 화면
  background: type=BACKGROUND (5)
  shape_count: 4
  - shape name='TextBox 1' type=TEXT_BOX (17) autoshape=
    geom: L=402336 T=173736 W=6236208 H=457200 EMU | L=0.44in T=0.19in W=6.82in H=0.50in
    fill: type=BACKGROUND (5)
    line: color=inherit width_pt=None
    textframe: anchor=None wrap=False mL=0 mR=91440 mT=0 mB=45720
    text(60)='Android App 진행 보고'
      p0 lvl=0 align=None - text='Android App 진행 보고'
        r0 font='나눔고딕 ExtraBold' sz=24.0 b=True i=None c=inherit t='Android App 진행 보고'
  - shape name='TextBox 3' type=TEXT_BOX (17) autoshape=
    geom: L=603504 T=868680 W=13240512 H=5586145 EMU | L=0.66in T=0.95in W=14.48in H=6.11in
    fill: type=BACKGROUND (5)
    line: color=inherit width_pt=None
    textframe: anchor=None wrap=True mL=0 mR=91440 mT=45720 mB=45720
    text(60)='사내 테스트 피드백 반영 — UX 정리 3건 및 오류 수정 | •  도넛차트 색깔 일관성 fix | –  증'
      p0 lvl=0 align=None - text='사내 테스트 피드백 반영 — UX 정리 3건 및 오류 수정'
        r0 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t='사내'
        r1 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t=' '
        r2 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t='테스트'
        r3 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t=' '
        r4 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t='피드백'
        r5 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t=' '
        r6 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t='반영'
        r7 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t=' — UX '
        r8 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t='정리'
        r9 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t=' 3건'
        r10 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t=' '
        r11 font='나눔고딕 ExtraBold' sz=28.0 b=True i=None c=#222A33 t='및 오류 수정'
      p1 lvl=0 align=None - text='•  도넛차트 색깔 일관성 fix'
        r0 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='•  '
        r1 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='도넛차트'
        r2 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' '
        r3 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='색깔'
        r4 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' '
        r5 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='일관성'
        r6 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' fix'
      p2 lvl=1 align=None - text='–  증상: Single scan 309ml(노란색) 후 Auto scan 에서 색깔만 초록색으로 바뀌는 오'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  '
        r1 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='증상'
        r2 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=': Single scan 309ml('
        r3 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='노란색'
        r4 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=') 후 Auto scan '
        r5 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='에서'
        r6 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r7 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='색깔만'
        r8 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r9 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='초록색으로'
        r10 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r11 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='바뀌는 오류'
      p3 lvl=2 align=None - text='·      표시값(maxVolumeMl)과 색깔(lastVolumeMl) source 불일치'
        r0 font='나눔고딕' sz=13.0 b=False i=None c=#55606C t='·      '
        r1 font='나눔고딕' sz=13.0 b=False i=None c=#55606C t='표시값'
        r2 font='나눔고딕' sz=13.0 b=False i=None c=#55606C t='('
        r3 font='나눔고딕' sz=13.0 b=False i=None c=#55606C t='maxVolumeMl'
        r4 font='나눔고딕' sz=13.0 b=False i=None c=#55606C t=')과 '
        r5 font='나눔고딕' sz=13.0 b=False i=None c=#55606C t='색깔'
        r6 font='나눔고딕' sz=13.0 b=False i=None c=#55606C t='('
        r7 font='나눔고딕' sz=13.0 b=False i=None c=#55606C t='lastVolumeMl'
        r8 font='나눔고딕' sz=13.0 b=False i=None c=#55606C t=') source '
        r9 font='나눔고딕' sz=13.0 b=False i=None c=#55606C t='불일치'
      p4 lvl=1 align=None - text='–  수정: bladderLevel 업데이트도 maxVolumeMl 기준으로 통일'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  '
        r1 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='수정'
        r2 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=': '
        r3 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='bladderLevel'
        r4 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r5 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='업데이트도'
        r6 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r7 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='maxVolumeMl'
        r8 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r9 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='기준으로'
        r10 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r11 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='통일'
      p5 lvl=0 align=None - text='•  Setup 화면 Auto Scan Interval 카드 추가'
        r0 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='•  Setup '
        r1 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='화면'
        r2 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' Auto Scan Interval '
        r3 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='카드'
        r4 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' '
        r5 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='추가'
      p6 lvl=1 align=None - text='–  PiezoPersonalizationView에 신규 카드 — 600~5000ms 슬라이더 + ±200m'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  '
        r1 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='PiezoPersonalizationView에'
        r2 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r3 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='신규'
        r4 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r5 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='카드'
        r6 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' — 600~5000ms '
        r7 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='슬라이더'
        r8 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' + ±200ms '
        r9 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='스테퍼'
      p7 lvl=1 align=None - text='–  기존 MaxVolume / CatheterThreshold 카드와 동일 톤, 3카드 verticalSc'
        r0 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='–  '
        r1 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='기존'
        r2 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r3 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='MaxVolume'
        r4 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' / '
        r5 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='CatheterThreshold'
        r6 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r7 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='카드와'
        r8 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' '
        r9 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='동일'
        r10 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t=' 톤, 3카드 '
        r11 font='나눔고딕' sz=15.0 b=False i=None c=#222A33 t='verticalScroll'
      p8 lvl=0 align=None - text='•  BLE 끊김 banner 제거 — Silent Reconnect'
        r0 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='•  BLE '
        r1 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='끊김'
        r2 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' banner '
        r3 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t='제거'
        r4 font='나눔고딕' sz=18.0 b=True i=None c=#1E88E5 t=' — Silent Reconnect'
      p9 lvl=1 align=None - text='–  PiezoMonitoring / VivamyoMonitoring 양쪽 banner 표시 제거'
        r0 font='나눔고딕' sz=15.0 b=None i=None c=#222A33 t='–  '
        r1 font='나눔고딕' sz=15.0 b=None i=None c=#222A33 t='PiezoMonitoring'
        r2 font='나눔고딕' sz=15.0 b=None i=None c=#222A33 t=' '
        r3 font='나눔고딕' sz=15.0 b=None i=None c=#222A33 t='/ '
        r4 font='나눔고딕' sz=15.0 b=None i=None c=#222A33 t='VivamyoMonitoring'
        r5 font='나눔고딕' sz=15.0 b=None i=None c=#222A33 t=' 양쪽 '
        r6 font='나눔고딕' sz=15.0 b=None i=None c=#222A33 t='banner '
        r7 font='나눔고딕' sz=15.0 b=None i=None c=#222A33 t='표시 제거'
      p10 lvl=1 align=None - text='–  BleManager.scheduleAutoReconnect()가 이미 백그라운드 재연결 시도'
        r0 font='나눔고딕' sz=15.0 b=None i=None c=#222A33 t='–  '
        r1 font='나눔고딕' sz=15.0 b=None i=None c=#222A33 t='BleManager.scheduleAutoReconnect'
        r2 font='나눔고딕' sz=15.0 b=None i=None c=#222A33 t='()'
        r3 font='나눔고딕' sz=15.0 b=None i=None c=#222A33 t='가 이미 백그라운드 '
        r4 font='나눔고딕' sz=15.0 b=None i=None c=#222A33 t='재연결'
        r5 font='나눔고딕' sz=15.0 b=None i=None c=#222A33 t=' 시도'
      p11 lvl=1 align=None - text='–  측정 일시정지 / 배터리 폴링 재시작 등 다른 처리는 그대로 유지'
        r0 font='나눔고딕' sz=15.0 b=None i=None c=#222A33 t='–  '
        r1 font='나눔고딕' sz=15.0 b=None i=None c=#222A33 t='측정 일시정지 '
        r2 font='나눔고딕' sz=15.0 b=None i=None c=#222A33 t='/ '
        r3 font='나눔고딕' sz=15.0 b=None i=None c=#222A33 t='배터리 '
        r4 font='나눔고딕' sz=15.0 b=None i=None c=#222A33 t='폴링'
        r5 font='나눔고딕' sz=15.0 b=None i=None c=#222A33 t=' 재시작 등 다른 처리는 그대로 유지'
      p12 lvl=0 align=None - text='•  첫 연결시 배터리 잔량 표시가 안되는 오류 수정'
        r0 font='나눔고딕' sz=None b=True i=None c=#1E88E5 t='•  '
        r1 font='나눔고딕' sz=None b=True i=None c=#1E88E5 t='첫 '
        r2 font='나눔고딕' sz=None b=True i=None c=#1E88E5 t='연결시'
        r3 font='나눔고딕' sz=None b=True i=None c=#1E88E5 t=' 배터리 잔량 표시가 안되는 오류 수정'
      p13 lvl=0 align=None - text=''
      p14 lvl=0 align=None - text=''
      p15 lvl=0 align=None - text=''
  - shape name='그림 5' type=PICTURE (13) autoshape=
    geom: L=2457674 T=5771838 W=6630325 H=1743318 EMU | L=2.69in T=6.31in W=7.25in H=1.91in
    line: color=inherit width_pt=None
  - shape name='그림 7' type=PICTURE (13) autoshape=
    geom: L=10593990 T=1256249 W=2486422 H=5387248 EMU | L=11.59in T=1.37in W=2.72in H=5.89in
    line: color=inherit width_pt=None

======================================================================
SLIDE 7
  layout: 1. 빈 화면
  background: type=BACKGROUND (5)
  shape_count: 1
  - shape name='TextBox 1' type=TEXT_BOX (17) autoshape=
    geom: L=6243111 T=3530025 W=2144177 H=584775 EMU | L=6.83in T=3.86in W=2.34in H=0.64in
    fill: type=BACKGROUND (5)
    line: color=inherit width_pt=None
    textframe: anchor=None wrap=False mL=0 mR=91440 mT=45720 mB=45720
    text(60)='감사합니다'
      p0 lvl=0 align=None - text='감사합니다'
        r0 font='나눔고딕 ExtraBold' sz=32.0 b=True i=None c=inherit t='감사합니다'
